The background description provided herein is for the purpose of generally presenting the context of the disclosure. Work of the presently named inventors, to the extent it is described in this background section, as well as aspects of the description that may not otherwise qualify as prior art at the time of filing, are neither expressly nor impliedly admitted as prior art against the present disclosure.
Software applications that provide interactive digital maps, display driving directions, and support various geographic functions (“geographic applications”) can operate on a variety of user devices, including desktop computers, laptop computers, tablet computers, smartphones, car navigation systems, etc. In some cases, user devices have a substantially permanent network connection such as a Digital Subscriber Line (DSL) or a cable Internet connection. In other cases, user devices attempt to access network servers via wireless communication channels that are subject interruption, fluctuations in the quality of service, high prices (e.g., roaming charges), etc. Further, in some situations, user devices have no network connection at all.
As a result, geographic applications cannot always access network servers to service user requests. Moreover, while the operating system of a user device can easily identify some of the issues with wireless connectivity, such as when the user device is in the airplane mode or when the wireless service provider specifies second-generation (2G) capability rather than third-generation (3G) connectivity or higher, other connectivity issues are more difficult to detect and may be sudden, such as when a router or a data server appears to be available but fails to respond, or when the user requests a digital map of an area as she is walking away from a hotspot. As another example, a user may request driving directions via her smartphone before she pulls out of an underground garage, when no network connection is available, and the smartphone acquires network connectivity shortly after the user starts driving.